Loading [MathJax]/jax/output/CommonHTML/jax.js

Model Evaluation: Mean Squared Error, R-Squared

Machine Learning - পাইথন কৃত্রিম বুদ্ধিমত্তা (Artificial Intelligence with Python) Supervised Learning মডেল |
171
171

কৃত্রিম বুদ্ধিমত্তা (AI) এবং মেশিন লার্নিং (ML) মডেল তৈরির পর, সেগুলির কার্যকারিতা বা পারফরম্যান্স মূল্যায়ন করা অত্যন্ত গুরুত্বপূর্ণ। Mean Squared Error (MSE) এবং R-Squared (R²) হল দুটি জনপ্রিয় পরিমাপক যা রিগ্রেশন মডেলের কার্যকারিতা মূল্যায়ন করতে ব্যবহৃত হয়।


১. Mean Squared Error (MSE)

Mean Squared Error (MSE) হল একটি পরিমাপক যা রিগ্রেশন মডেলের ত্রুটি বা Error (অথবা ভুল পূর্বাভাস) পরিমাপ করে। এটি প্রকৃত মান এবং পূর্বাভাস করা মানের মধ্যে পার্থক্যের বর্গের গড়। ছোট MSE মান ভাল মডেল নির্দেশ করে, কারণ এর মান যত কম হবে, মডেলটির পূর্বাভাস তত সঠিক হবে।

সূত্র:

MSE=1nni=1(yi^yi)2

যেখানে:

  • yi হলো প্রকৃত মান (Actual value),
  • ^yi হলো পূর্বাভাস (Predicted value),
  • n হলো ডেটার সংখ্যা।

বৈশিষ্ট্য:

  • MSE সব সময় ধনাত্মক মান (positive value) হয়।
  • এর মান যত ছোট হবে, মডেল তত ভালো।
  • MSE আউটলায়ারের জন্য খুবই সংবেদনশীল (sensitive)।

উদাহরণ:

from sklearn.metrics import mean_squared_error

# প্রকৃত মান (Actual values)
y_actual = [3, -0.5, 2, 7]

# পূর্বাভাস মান (Predicted values)
y_pred = [2.5, 0.0, 2, 8]

# MSE গণনা করা
mse = mean_squared_error(y_actual, y_pred)
print(f'Mean Squared Error: {mse}')

২. R-Squared (R²)

R-Squared (R²) বা কোঅফিসিয়েন্ট অব ডetermination হলো একটি পরিমাপক যা মডেলটির পূর্বাভাসের সাথে প্রকৃত মানের কতটা সম্পর্ক রয়েছে তা পরিমাপ করে। R² পরিমাপক ০ এবং ১ এর মধ্যে থাকে:

  • R² = 1: এটি নির্দেশ করে যে মডেলটি পুরোপুরি সঠিক, অর্থাৎ মডেল দ্বারা পূর্বাভাস করা মান এবং প্রকৃত মানের মধ্যে পূর্ণ সাদৃশ্য রয়েছে।
  • R² = 0: এটি নির্দেশ করে যে মডেলটি ডেটার মধ্যে কোনো সম্পর্ক ব্যাখ্যা করতে পারছে না।

সূত্র:

R2=1ni=1(yi^yi)2ni=1(yiˉy)2

যেখানে:

  • yi হলো প্রকৃত মান,
  • ^yi হলো পূর্বাভাস মান,
  • ˉy হলো প্রকৃত মানের গড়।

বৈশিষ্ট্য:

  • R² এর মান ০ থেকে ১ এর মধ্যে থাকে।
  • যত বেশি হবে, মডেলটি তত ভাল হবে, কারণ তা বেশি বৈশিষ্ট্যযুক্ত ডেটার ভ্যারিয়েন্স (variance) ব্যাখ্যা করে।
  • এটি সাধারণত রিগ্রেশন মডেলের কার্যকারিতা মূল্যায়নে ব্যবহৃত হয়।

উদাহরণ:

from sklearn.metrics import r2_score

# প্রকৃত মান (Actual values)
y_actual = [3, -0.5, 2, 7]

# পূর্বাভাস মান (Predicted values)
y_pred = [2.5, 0.0, 2, 8]

# R² গণনা করা
r_squared = r2_score(y_actual, y_pred)
print(f'R-Squared: {r_squared}')

MSE এবং R² এর মধ্যে পার্থক্য

বৈশিষ্ট্যMean Squared Error (MSE)R-Squared (R²)
মূল্য পরিসর০ থেকে ∞ পর্যন্ত (সবসময় ধনাত্মক)০ থেকে ১ পর্যন্ত, কখনও কখনও নেতিবাচকও হতে পারে
কী পরিমাপ করেমডেল দ্বারা পূর্বাভাসের ত্রুটি (error) পরিমাপ করেমডেলটি কতটা সঠিকভাবে ডেটার ভ্যারিয়েন্স ব্যাখ্যা করে
তথ্য ভরসাযোগ্যতাআউটলায়ারের প্রতি সংবেদনশীল (Sensitive to outliers)আউটলায়ারের প্রতি কম সংবেদনশীল (Less sensitive)
বড় মানের অর্থত্রুটি বেশি, মডেল ভালো নয়R² মান ছোট হলে মডেল কম সঠিক
ছোট মানের অর্থমডেল অধিক সঠিক এবং ছোট ত্রুটি (বেশি মানের পার্থক্য না থাকলে)R² মান বড় হলে মডেল ভালো

MSE এবং R² উভয় ব্যবহার করার সুবিধা

  • MSE সাধারণত ত্রুটির আকার এবং ভ্যালিডিটি মূল্যায়ন করতে ব্যবহার করা হয়, তবে এটি আউটলায়ারের প্রতি সংবেদনশীল এবং শুধুমাত্র ত্রুটির মান দেয়।
  • মডেলটির সামগ্রিক কার্যকারিতা এবং প্রকৃত মানের সাথে সম্পর্কের স্তর পরিমাপ করতে সাহায্য করে। R² এর সাহায্যে আপনি মডেলের ক্ষমতা বুঝতে পারেন এবং এর ভিত্তিতে সিদ্ধান্ত নিতে পারেন।

সারাংশ

Mean Squared Error (MSE) এবং R-Squared (R²) হল দুটি গুরুত্বপূর্ণ মেট্রিক যা রিগ্রেশন মডেলগুলির কার্যকারিতা পরিমাপ করতে ব্যবহৃত হয়। MSE ত্রুটি পরিমাপ করে এবং ছোট মানে ভাল মডেল নির্দেশ করে, যখন R² মডেলটির কতটা সঠিকভাবে ডেটার ভ্যারিয়েন্স ব্যাখ্যা করছে তা পরিমাপ করে, এবং উচ্চ R² মান ভাল মডেল নির্দেশ করে। দুইটি মেট্রিক একসাথে ব্যবহার করলে মডেলের উন্নয়ন এবং মূল্যায়ন সহজ হয়।

Content added By
Promotion